//
// Skedar (MP)
//

#include "stagesetup.h"

extern s32 intro[];
extern u32 props[];
extern struct path paths[];
extern struct ailist ailists[];

struct stagesetup setup = {
	NULL,
	NULL,
	NULL,
	intro,
	props,
	paths,
	ailists,
	NULL,
};

u32 props[] = {
	weapon(0x0200, 0x0000, PAD_OAT_00CD, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION00)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00DC, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00DD, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0200, 0x0000, PAD_OAT_00CE, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION01)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00DE, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00DF, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0200, 0x0000, PAD_OAT_00CF, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION02)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E0, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E1, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0133, 0x0000, PAD_OAT_00D0, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION03)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E2, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E3, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0133, 0x0000, PAD_OAT_00D1, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION04)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E4, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E5, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0133, 0x0000, PAD_OAT_00D2, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION05)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E6, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E7, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00D3, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION06)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E8, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00E9, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00D4, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION07)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00EA, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00EB, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00D5, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION08)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00EC, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00ED, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00D6, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION09)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00EE, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00EF, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00D7, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION10)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F0, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F1, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00D8, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION11)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F2, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F3, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00D9, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION12)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F4, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F5, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00DA, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION13)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F6, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F7, OBJFLAG_FALL, 0, 0, 1000)
	weapon(0x0100, 0x0000, PAD_OAT_00DB, OBJFLAG_FALL, 0, 0, WEAPON_MPLOCATION14)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F8, OBJFLAG_FALL, 0, 0, 1000)
	ammocratemulti(0x0099, MODEL_MULTI_AMMO_CRATE, PAD_OAT_00F9, OBJFLAG_FALL, 0, 0, 1000)
	endprops
};

s32 intro[] = {
	spawn(PAD_OAT_00A5)
	spawn(PAD_OAT_00A6)
	spawn(PAD_OAT_00A7)
	spawn(PAD_OAT_00A8)
	spawn(PAD_OAT_00A9)
	spawn(PAD_OAT_00AA)
	spawn(PAD_OAT_00AB)
	spawn(PAD_OAT_00AC)
	spawn(PAD_OAT_00AD)
	spawn(PAD_OAT_00AE)
	spawn(PAD_OAT_00AF)
	spawn(PAD_OAT_00B0)
	case(0, PAD_OAT_00B1)
	case_respawn(0, PAD_OAT_00B2)
	case_respawn(0, PAD_OAT_00B3)
	case_respawn(0, PAD_OAT_00B4)
	case_respawn(0, PAD_OAT_00B5)
	case_respawn(0, PAD_OAT_00B6)
	case_respawn(0, PAD_OAT_00B7)
	case(1, PAD_OAT_00B8)
	case_respawn(1, PAD_OAT_00B9)
	case_respawn(1, PAD_OAT_00BA)
	case_respawn(1, PAD_OAT_00BB)
	case_respawn(1, PAD_OAT_00BC)
	case_respawn(1, PAD_OAT_00BD)
	case_respawn(1, PAD_OAT_00BE)
	case(2, PAD_OAT_00BF)
	case_respawn(2, PAD_OAT_00C0)
	case_respawn(2, PAD_OAT_00C1)
	case_respawn(2, PAD_OAT_00C2)
	case_respawn(2, PAD_OAT_00C3)
	case_respawn(2, PAD_OAT_00C4)
	case_respawn(2, PAD_OAT_00C5)
	case(3, PAD_OAT_00C6)
	case_respawn(3, PAD_OAT_00C7)
	case_respawn(3, PAD_OAT_00C8)
	case_respawn(3, PAD_OAT_00C9)
	case_respawn(3, PAD_OAT_00CA)
	case_respawn(3, PAD_OAT_00CB)
	case_respawn(3, PAD_OAT_00CC)
	hill(PAD_OAT_0093)
	hill(PAD_OAT_00D5)
	hill(PAD_OAT_008D)
	hill(PAD_OAT_00DA)
	hill(PAD_OAT_0076)
	endintro
};

s32 path00[] = {
	-1,
};

struct path paths[] = {
	{ NULL, 0, 0 },
};

u8 unregistered_func1[] = {
	endlist
};

u8 func1000_1c08[] = {
	mp_init_simulants
	rebuild_teams
	rebuild_squadrons
	set_ailist(CHR_SELF, GAILIST_IDLE)
	endlist
};

struct ailist ailists[] = {
	{ func1000_1c08, 0x1000 },
	{ NULL, 0 },
};
